import xml.dom.minidom
from xml.dom.minidom import Node

lista_Grupos=[]

class Miembro:
    
    """
        reporte es una lista de la clase Reporte
    """
    
    def __init__(self):
        self.name = ""
        self.id = 0
        self.direccion_mac = ""
        self.nombre_dispositivo = ""
        self.reporte= Reporte()


class Reporte:
    
    def __init__(self):
        self.fecha=""
        self.asistio = False
        
class Grupo:
    
    """
        m: lista de la clase Miembro
    """
    def __init__(self, nombre = "", m = [], ide = 0,):
        self.miembros = m
        self.nombre = nombre
        self.id = ide
    

# Cargar configuraciones


def dar_grupo(archivo):
    global lista_Grupos
    lista_miembros = []
    doc = xml.dom.minidom.parse(archivo)
    for node1 in doc.getElementsByTagName("CMP"):
        for node2 in doc.getElementsByTagName("Asistencia"):
            for node3 in doc.getElementsByTagName("Group"):
                nom = node3.getAttribute("name")
                iden = int(node3.getAttribute("id"))
                grupo = Grupo(nombre = nom, ide = iden)
                for node4 in doc.getElementsByTagName("memberlist"):
                    for node5 in doc.getElementsByTagName("member"):
                        #<member BTID="disp1" MAC="1234" memberid="1" name="admin"/>
                        temp = Miembro()
                        temp.name = node5.getAttribute("name")
                        temp.direccion_mac = node5.getAttribute("MAC")
                        temp.nombre_dispositivo = node5.getAttribute("BTID")
                        temp.id = int(node5.getAttribute("memberid"))
                        if (node5.parentNode==node4 and node4.parentNode==node3):
                            lista_miembros.append(temp)
                    grupo.miembros = lista_miembros
                lista_Grupos.append(grupo)
    return lista_Grupos
